Devices and method for recording and analyzing temporal events

ABSTRACT

A device and a method for temporal metering of events and to a device and a method for temporal analysis of events. The temporal metering device when operating obtains current times for each occurrence of physical events, and records in at least one metering file, information authorizing a temporal reconstitution of the occurrences. This device comprises a module for summary processing of the occurrences and of the current times, producing condensed results which are recorded in predefined data structures of prefixed sizes of the metering file, so as to make it possible to keep the size of this file constant during successive recordings of this information. Applications to checks of software services and to analyses of computing malfunctions.

The present invention concerns devices and methods for temporal meteringand temporal analysis of events, in particular applicable to softwareservices. It may relate in particular to the checking of occurrences ofevents or the analysis of malfunctions in relation to these events.

The development of computer networks has multiplied the possibilities ofremotely accessing services available on certain machines, such as inparticular games, educational programs, videos or music. The softwareservices, in particular, rely on the presence of an executable piece ofsoftware in one of the machines and on access so as to execute thissoftware from an appliance linked to this machine by a network. It thenturns out to be very useful to be able to maintain a temporal trace ofthe successive calls, so as to set up effective management going beyondsimple addition of the calls and be capable of diagnosing with morecapabilities the circumstances and causes of any malfunctions.

Such monitoring is for example valuable for a software supplierlicensing his product to a service provider and receiving a remunerationwhich depends on the number of calls for a given period. The existenceof files summarizing all the calls made, created at the premises of theservice provider but accessible to the software supplier, then allowsthe latter to check the actual number of calls and to bill the serviceprovider accordingly.

However, consecutive records of the times of calls lead to files ofincreasing and rapidly cumbersome, or even prohibitive, sizes once thenumber of calls becomes significant.

Patent application WO-01/82033 discloses a procedure for detecting useof program for billing purposes. According to this procedure, all thecalls to a function of the program are recorded in a log file, so as tomake it possible to bill the licensee as a function of the extent ofutilization of the program. An identification representing the number ofcalls is then co-recorded with an identification of the system time anda cryptographic signature, after a predetermined number of calls or infirst predefined time intervals.

The number of records is thus reduced, since the latter are not madesystematically, but episodically. However, insofar as the resultsobtained are recorded at a sufficient frequency to remain reliable, thisprocedure does not solve the problem of increasing file size, but canonly attenuate or delay the effects thereof.

It would moreover be conceivable to transfer the results obtained to anindependent storage space, either in real time, or as soon as theinformation files reach a predefined size. However, such a mechanism isat risk of requiring fairly voluminous storage resources, andnecessitates the installing of a transfer device that is penalizing forthe effective operation of the machine containing the software.

U.S. Pat. No. 6,026,139 discloses a counting procedure able to generatea frequency distribution representation such as a histogram. Anintegrated device counts the numbers of occurrences of a predeterminedtype of events in measurement periods, doing so during a period ofsub-experimentation associated with given parameters. At the end of eachof the measurement periods, a frequency counter is incremented when thenumber of occurrences is greater than a predefined threshold value.These operations make it possible to obtain for the period ofsub-experimentation the number of measurement periods during which thetargeted events have occurred in a significant manner. One proceeds in asimilar manner for the whole set of successive periods ofsub-experimentation, this leading to a frequency distribution based onthe number of periods of measurements adopted for each period ofsub-experimentation. It is thus possible to compare various frequenciesof occurrences according to the parameters chosen.

This technique considerably reduces the information to be recorded, andtherefor the storage size required, but to the detriment of the temporalinformation regarding the events.

The present invention relates to a device for temporal metering of callsto a software service available on a machine, possibly capable ofproviding significant results while yet solving the problem ofincreasing sizes of log files, and without prejudicing the currentoperation of the machine.

More generally, the invention relates to a device for temporal meteringof events, which can make possible an at least partial temporalreconstitution of the occurrences of these events, which reconstitutionis sufficient to obtain the desired cues, while yet offering theadvantages mentioned above. It may be particularly beneficial in respectof embedded systems.

The invention also relates to a method of metering events correspondingto the metering device of the invention, and to a device and a method oftemporal analysis of events making it possible to utilize resultsobtained by means of a device or of a method of metering eventsaccording to the invention.

It applies in particular to the checking of calls to a software service,for the purposes of billing or of diagnosis of malfunctions. However, itcan also be applied to other types of checking or analysis ofmalfunctions, such as in particular:

the monitoring of the use of a computing functionality available on amachine; this makes it possible to retrace the use of a function in caseof a software or hardware fault;

the monitoring of telephone calls, made from a telephone exchange and/orreceived by the latter;

the monitoring of orders and of deliveries of video programs (VODstanding for “Video On Demand”) or audio programs (MP3 files forexample) pertaining to a server (or several);

the monitoring of maneuvers performed in a repeated manner on motorvehicles, for example the use of brakes, of the accelerator and/or ofthe gearbox;

the monitoring of circumstantial events, for example in the aeronauticalfield the presence at altitudes above (or below) a threshold, and in themedical field, the overshoots of a ceiling, or undershoots of a floor,of amounts of an element in the blood (insulin, glucose, white cells,etc.).

For this purpose, the subject of the invention is a device for temporalmetering of events, comprising:

a module for real time input of occurrences of physical events,

a module for access to at least one clock, which module is designed toobtain a current time with each input of one of the occurrences,

and a module for recording in at least one metering file, informationpertaining to these occurrences and to the corresponding current times,this information authorizing an at least partial temporal reconstitutionof the occurrences.

According to the invention, the metering device also comprises a modulefor summary processing of the occurrences and of the current times,which module is designed to produce condensed results. Furthermore, therecording module is designed to record the condensed results inpredefined data structures of prefixed sizes of the metering file, so asto make it possible to keep the size of the file constant duringsuccessive recordings of the information.

Thus, contrary to all expectations, the temporal information desired maybe brought together in a form summarized into a file of constant size,or into several predefined files each having a constant size. Thissurprising result relies on the one hand on the summary processing ofthe occurrences and of the times, which makes it possible to reduce thenumber of items of information to be stored, and on the other hand onthe use of predefined data structures of prefixed sizes in the meteringfile (or in each of the files).

Specifically, each of these data structures is associated with aspecific item of information and with a corresponding processing. Forexample, the data structure may consist of a word of four bytes which isintended to receive the aggregate number of occurrences that have arisenbetween 12 pm and 1 pm each day for a week. In another example, the datastructure is intended to receive the number of times that occurrenceshave arisen during more than one minute in a row, the events examinedcorresponding to measurements performed with a temporal samplingstepsize of 2 seconds. The summary processing performed therefore relieson specific algorithms making it possible to “consolidate” the results.

The at least partial temporal reconstitution pertains to the targetedaims: if one wishes to pinpoint a malfunction in time to within onesecond, the information recorded must be sufficient to pinpoint towithin one second all the occurrences that have arisen; if one wishes tocheck the calls to a piece of software, the information must make itpossible to dependably ascertain the number of calls and to at leaststatistically verify their temporal distribution. In all cases, thetemporal reconstitution makes it possible at least to approximatelyreconstitute the log of the events that have occurred.

Two categories of events to which the device of the invention has theability to be applied may be distinguished:

those which are detected passively when they happen in a punctuatedmanner, in a way which generally cannot be forecast in the detail oftheir occurrences; this category includes for example telephone calls orcalls to a piece of software, the switching on of engines or depressionsof a brake;

and those which are caused by measurements, at determined samplinginstants; this category relies for example on measurements of altitudesor of speeds, the events consisting of certain particular features ofthe altitudes or speeds measured (the speed overshoots predefined safetylevels, the altitude goes below or above critical altitudes, etc.).

To process one type of events, the use of a single file is preferred. Itis thus possible to concentrate all the information required, therebysimplifying and easing accesses in record mode and then the steps ofutilization. Additionally, when several categories of distinct eventsare of interest, several metering files are preferably used, one fileper category of events. This embodiment facilitates independence of theprocessing operations and of the utilization of the results, andclarifies the use of these files.

Access to the clock or to the clocks may be direct or otherwise. Forexample, in a particular embodiment, the metering device is informed atone and the same time of the occurrence of an event and of theassociated instant, by one or more external systems. The combinedutilization of several clocks assumes their appropriate synchronization,at least when they pertain to one and the same type of events.

The possibility of obtaining files of fixed sizes is especiallybeneficial in respect of embedded systems, for which the storageconsiderations may be decisive.

In a preferred form of embodiment, the summary processing module isdesigned to produce at least two types of distinct results, at least oneof these types of results comprising redundancies with respect to theother types of results, so as to allow checks of consistency of theresults.

This embodiment is especially relevant in respect of checks made on theevents that have happened, for example to verify the number of calls toa software service at a licensee's with a view to billing, the filesthen advantageously being encrypted.

In this preferred embodiment, it is advantageous for the summaryprocessing module to be designed so that the various types of resultsprovide complementary information. Thus, the existence of several typesdoes not serve only to validate the results in a more reliable manner,but also to aggregate information useful for later analyses.

According to a preferred mode of these types of results, the lattercomprise:

a first type of results consisting of numbers of said occurrences perslot of durations of gaps between two of the consecutive occurrences

and a second type of results consisting of numbers of the occurrencesper consecutive time slot of a predetermined period.

Thus, to the information regarding succession of the events per timeslot within a given timescale, for example during a month (second typeof results), is added information on the distribution of the eventsaccording to the durations which separate them (first type). It is thuspossible to refine the cues pertaining to the chronological progress, byinteresting oneself in the frequency of occurrences.

Preferably, the slots of durations of gaps of the first type of resultsthen have amplitudes increasing not strictly with these durations (thatis to say which grow with the durations but may admit plateaux).

According to several interesting provisions for embodying the meteringdevice of the invention, the physical events comprise, separately or incombination(s):

calls to a piece of software situated on a source machine by appliancesable to communicate with this machine;

telephone calls;

predefined maneuvers in a motor vehicle, for example the use of thebrakes in order to ascertain whether the wear to the brake pads isnormal or otherwise;

uses of computer functionalities available on a machine and liable toundergo malfunctions on account of technical problems; for example, toanalyze the origin of computer crashes, a set of metering files isprovided, comprising one file per function suspected of possibly leadingto a crash, so as to examine whether there exists a link between the use(or the large frequency of use) of a function and the anomaly noted.

The invention also relates to a method of temporal metering of events,in which:

occurrences of physical events are flagged in real time,

at least one clock is accessed so as to obtain a current time of each ofthese occurrences

and information pertaining to the occurrences and to the correspondingcurrent times is recorded in at least one metering file, thisinformation authorizing an at least partial temporal reconstitution ofthe occurrences.

According to the invention, a summary processing of the occurrences andof the current times is performed automatically, so as to producecondensed results and the information is recorded in the form of thecondensed results, in predefined data structures of prefixed sizes ofthe metering file, so as to make it possible to keep the size of thisfile constant during successive recordings of the information.

This method is preferably implemented by means of any one of the modesof embodiment of the metering device of the invention.

A subject of the invention is also a device for temporal analysis ofevents on the basis of at least one metering file obtained by means of ametering device in which at least two types of distinct results withredundancies are used. This device comprises:

a module for extracting the results recorded in this file,

a module for verifying consistencies of the results respectively ofthese types of results,

and a module for producing a warning signal intended for a user in thecase of inconsistency of these results.

Advantageously, the metering file then being obtained by means of ametering device for which the types of results provide complementaryinformation, the temporal analysis device also comprises:

a module for inputting requests of a user, these requests pertaining totemporal cues relating to the occurrences of the events,

a module for combined processing of the types of results, which moduleis designed to produce the temporal cues as a function of theinformation recorded,

and a module for presenting these temporal cues to the user.

The invention applies also to a method of temporal analysis of eventscorresponding to the events analysis device of the invention, and whichis preferably implemented by means of one of the modes of embodiment ofthe latter.

The invention also relates to a computer program product comprisingprogram code instructions for the execution of the steps of the methodof metering or of temporal analysis of events of the invention, whenthis program is executed on a computer. The expression “computer programproduct” is understood to mean a computer program medium, which canconsist not only of a storage space containing the program, such as adiskette or a cassette, but also of a signal, such as an electrical oroptical signal.

The invention will be better understood and illustrated by means of thefollowing examples of embodiment and of implementation, which are in noway limiting, with reference to the appended figures in which:

FIG. 1 is a basic diagram of a device for temporal metering of events inaccordance with the invention;

FIG. 2 is a basic diagram of a device for temporal analysis of eventswhich is associated with the device of FIG. 1;

FIG. 3 shows a first type of results obtained with the device of FIG. 1and designed to be analyzed by means of the device of FIG. 2, in theform of a histogram giving the number of occurrences of events as afunction of slots of durations of gaps between two consecutive events;

FIG. 4 shows a second type of results obtained with the device of FIG. 1and designed to be analyzed by means of the device of FIG. 2, in theform of a histogram giving the number of occurrences of events as afunction of consecutive time slots.

In FIGS. 1 and 2, the modules represented are functional units, whichmay or may not correspond to physically distinguishable units. Forexample, these modules or some of them may be grouped together within asingle component, or constitute functionalities of one and the samepiece of software. Conversely, certain modules may possibly be composedof separate physical entities.

A device 1 for temporal metering of events (FIG. 1) is linked to anevents detection module 5, capable of detecting any triggering of anevent of a predefined category, for example access to a software serviceby third parties or the triggering of particular operations performed onthe machine hosting the device 1 (switch on, access to the Internet,etc.). By way of example, the module 5 is designed to detect three typesof distinct events.

The temporal metering device 1 is designed to produce informationpertaining to the occurrences of the events considered and to theirtemporal progress, and to record this information in metering files F1,F2 and F3 associated respectively with the three categories of eventsdetected.

This device 1 comprises a module 11 for real time input of occurrencesof events detected by the detection module 5, a module 12 for access toone or more clock(s) 10, making it possible to obtain a current timewith each input of one of the occurrences, and a module 15 for recordingthe information mentioned above in the files F1, F2 and F3.

The device 1 also comprises a module 13 for summary processing of theoccurrences and of the current times, producing condensed results whichform the information to be saved and transmitting same to the recordingmodule 15. The latter is for its part responsible for recording thesecondensed results in predefined data structures of fixed sizes of thefiles F1, F2 and F3.

The files F1, F2 and F3 are made available for a device for temporalanalysis 2 of events (FIG. 2), responsible for utilizing the resultsrecorded in these files. In the detailed embodiment, the device 2 iscapable, after possible decryption, of verifying the consistency of theinformation supplied and of supplying specific cues in response torequests formulated by a user.

This device 2 comprises a module 21 for extracting results from thefiles F1, F2 and F3, a module 22 for verifying consistency within eachof the files, of the results extracted therefrom, and a module 23 forproducing a signal S to a user interface 20 in case inconsistency isflagged. The consistency of the information is verified separately foreach of the files F1, F2 and F3, and consists for example in making surethat the sum of the durations associated with events (such as thedurations of gaps between the starts of two consecutive events) does notexceed a ceiling corresponding to a total duration of implementation, orthat redundant information is not contradictory.

The temporal analysis device 2 also comprises a unit 24 for inputtingrequests via the user interface 20, so as to obtain in particularstatistical cues (distribution of the occurrences as a function of thehours of the day or of the period of the month, mean duration of gapbetween two occurrences, etc) or factual cues (number of occurrencesarising in such a time slot of the month, duration of an interruption,identification of the interruptions greater than 1 h, etc). A module 25for combined processing of the results is able to utilize theinformation extracted from the files F1, F2 and F3 to respond to therequests thus formulated. This module 25 transmits the desired cues, orpossibly a message of impossibility of response, to a module 26 forpresenting information, which communicates with the user interface 20.

The manner of operation of the devices 1 and 2 will be detailed on aparticular case, in which one of the three categories of events consistsof calls to a software service. The provisions of implementation aremade explicit only for this category of events, a similar course ofaction being adopted for example for the other categories.

An executable piece of software supplying the software service issituated on a single machine, called the “source machine”. It may becalled by all the machines belonging to the same network, and executedon these machines. Access to the software is protected, the protectionbeing tied to the source machine. The metering device 1, present in thesource machine, makes it possible to meter all the calls in the file F1.The latter is situated here in the same directory as the executable, andretains a size of a few k-bytes. Its constitution allows the temporalanalysis device 2 to verify that the users have not modified it, as isset forth hereinbelow.

The device 1 uses a specific feature of machines organized in a network,namely that all these machines have the same time to within a second,and that write access to a given file can be made only by a singlemachine at a given instant, even if all these machines have access tothis file. When a machine has executed the software, it writes the“date” on which it did it to the file. The clocks 10 are therefore inthe present case dispersed in the various machines and synchronized, theaccess module 12 of the device 1 indirectly receiving the times of theseclocks. The machine concerned subtracts moreover from this date, the“date” of the previous call. A duration called Δt is thus obtained.

According to the time spans between two calls, Δt may equal 1 s, 2 s, 3s . . . 1 min . . . 1 min 20 s . . . 2 min . . . 1 h . . . 1 day . . . 1week, the durations Δt being sampled in a nonlinear manner (that is tosay the sampling stepsize varies). For each stepsize, the summaryprocessing module 13 meters all the durations Δt, storing them in aregister corresponding to this stepsize. By virtue of the nonlinearsampling, relevant information is obtained while limiting the storagesrequired. Specifically, while it is useful to ascertain to within asecond the duration between two calls separated by 10 s (that is to saywith an accuracy of 10%), it is unnecessary to know to within a secondthe duration between two calls separated by 1 day (to maintain anaccuracy of 10%, a stepsize of 2 hours is sufficient).

For example:

For Δt varying from 0 s to 59 s, the stepsize equals one second; sixtyregisters R_(a0) to R_(a59) are then reserved in the file F1 to meterthese durations Δt. If the duration Δt equals 30 s, we add 1 to theregister a_(a29). We thus have a histogram of the durations Δt lyingbetween 0 s and 59 s, with a stepsize of 1 second.

For Δt varying from 1 min to 4 min 58 s, the stepsize equals twoseconds. In the file F1, are then reserved (5−1)*60/2=120 registerscalled R_(b0) to R_(b119) to meter these durations Δt. If Δt equals 2min 17 s, we add 1 to the register R_(b38). We thus have a histogram ofthe Δt lying between 1 min and 4 min 58 s, with a stepsize of 2 seconds.

For Δt varying from 5 min to 15 min 55 s, the stepsize equals twoseconds. In the file F1, are then reserved (15−5)*60/5=120 registerscalled R_(c0) to R_(c119) to meter these durations Δt. If Δt equals 10min 03 s, we add 1 to the register R_(c60). We thus have a histogram ofthe Δt lying between 5 min and 15 min 55 s, with a stepsize of 5seconds.

. . .

For Δt varying from 2 h to 4 h, the stepsize equals 1 min. In the fileF1, are then reserved (4−2)*60=120 registers called R_(n0) to R_(n119)to meter these durations Δt. If Δt equals 1 h, we add 1 to the registerR_(n60). We thus have a histogram of the Δt lying between 2 h and 2 h 59min, with a stepsize of 1 min.

. . .

For Δt varying from 1 day to 10 days, the stepsize equals 1 hour. In thefile F1, are then reserved (10−1)*24=216 registers called R_(x0) toR_(x215) to meter these durations Δt. With Δt equals 8 days, 2 hours, 13min and 15 s, we add 1 to the register R_(x194). We thus have ahistogram of the Δt lying between 1 and 10 days, with a stepsize of 1hour. P . . .

We thus obtain a histogram H1 (FIG. 3), giving numbers N_(i) ofoccurrences of the calls (axis 32) as a function of slots PE_(i) ofdurations of gap Δt between two consecutive occurrences (axis 31).

By imposing the condition that, at the start of the use of the software,the histogram H1 is blank, it is possible by periodically analyzing it(period P), for example every month, to ascertain the duration of use ofthe software. The period P is agreed beforehand in the protocol betweenthe client and the supplier of the software, that hosts the temporalanalysis device 2. The client thus sends the file F1 to the supplieraccording to this periodicity (the periodicity may be different for thefiles F1, F2 and F3, although a grouped send is more practical toimplement). In the case illustrated by the histogram H1, it is assumedthat one is dealing with a first month of monitoring, hence that theresults displayed are directly representative of the events occurringduring this month. Beyond that, it is expedient to subtract from themost recent histogram H1 that obtained the previous month, whichoperation is performed automatically by the temporal analysis device 2.

Let us consider the slot PE_(i), time slice lying between Δt_(i) andΔt_(i+1), and a number N_(i) of uses during this time slice, giving thenumber of times in which the time interval between two calls liesbetween Δt_(i) and Δt_(i+1). If for example N_(i)=20, t_(i)=1 h andt_(i+1=2) h, and if N_(i) is the only nonzero value of the numbers ofoccurrences, then we know that the software has been used to the minimumfor 20 hours and to the maximum for 40 hours, and that 20 calls to thesoftware took place within this duration. In another example N_(i)=1,t_(i=)4 days and t_(i+1)=5 days, we know that an interruption of 4 or 5days has occurred.

In current use mode, the client sends the file F1 thus defined everymonth at the same time. By differencing on the basis of the slots PE_(i)the content of the histograms H1 from one month to another, the temporalanalysis device 2 determines the number of occurrences N_(i) for thecurrent month. The file F1 is therefore kept at the client's andautomatically updated in tempo with the calls, and has not beenmanipulated by this client.

A second histogram H2 (FIG. 4) is recorded in the file F1. It gives thenumber N′_(j) of accesses to the software (axis 34) during each timeslot PT_(j) of a period P (axis 33), corresponding here to each hour ofthe month for the first 54 hours. The month is therefore broken downinto 24 h*31 days, i.e. 744 registers. Just as for the histogram H1, thehistogram H2 represented here is established during the first month. Forthe succeeding months, the results are obtained from the file F1communicated by the client, by subtracting from the most recenthistogram H2, that obtained the previous month.

If an interruption of more than an hour occurs, it is therefore possibleto identify it, since the registers tied to these hours are notincremented during the month considered. Thus, it is noted that aninterruption of service (referenced 35 in the histogram H2) has probablytaken place for two hours (hours 36 and 37), since 24 hours earlier, thenumber of calls was very high (around 3000 calls for the thirteenthhour, and around 600 for the fourteenth).

By using the two types of information storage described hereinabove, thetemporal analysis device 2 (verification module 22) can detect anyfrauds of the client, in particular in the cases set forth hereinbelow:

a sizable duration of gap Δt (for example greater than two days) hasbeen detected in the histogram H1, corresponding to a number of hours ofnon use (for example 50) in the histogram H2, although the clientdeclares that he had not stopped the software call service: hence, at agiven moment he made a copy of the file F1, and he replaced the currentfile F1 by this copy two days later;

a no-call hour is flagged in the histogram H2, although in the histogramH1, the durations of gap Δt lying between 1 h and 2 h are all zero (oneof them ought to be nonzero since there was an interruption of at leastone hour, hence a dwell of at least one hour between two calls): theclient has therefore modified the file F1, since there is inconsistency;

the number of calls is zero for all the hours in the histogram H2,although in the histogram H1, one of the durations of gap Δt greaterthan 2 hours is associated with calls: the client has modified the fileF1, since there is inconsistency.

Moreover:

at any moment, the total sum of the contents of the registers of thehistogram H2 must be equal to the total sum of the contents of theregisters per hour of the histogram H1;

-   -   and over a month, the sums ΣN_(i)Δt_(i) and ΣN_(i)Δt_(i+1) in        the histogram H2 must be respectively less than and greater than        a month, with N_(i) corresponding to the register storing the        dwells between calls lying between Δt_(i) and Δt_(i+1) (slot        PE_(i)).

If this is not the case, and assuming that the calculation of the timein the machines is accurate, the file F1 has been modified.

According to a particular illustration, the mean number of calls to thesoftware service in a month is 1 million, i.e. one call every 2.6seconds. If a low estimate is made, for example that the number of callsis 100 000 per month, then there is a call every 26 seconds. Thebreakdown indicated in table 1 is then effected, in slices of durationof gap Δt (variable duration between the values Δt), while each timeindicating a minimum error and a maximum error in the duration of gap Δtper slot PE_(i). TABLE 1 Stepsize and errors in the histogram H1Stepsize of Intervals of the slots Number of durations Δt PE_(i) Minerror Max error registers 1 s → 5 min 1 s 0.33%  100% 300 5 min 2 s → 10min 2 s 0.33% 0.67% 150 10 min 5 s→30 min 5 s 0.83% 0.28% 240 30 min 10s→60 min 10 s 0.56% 0.28% 180 1 h 0 min 20 s→2 h 20 s 0.28% 0.56% 180 2h 0 min 30 s→4 h 30 s 0.21% 0.42% 240 4 h 1 min→6 h 1 min 0.28% 0.42%120 6 h 2 min→8 h 2 min 0.42% 0.56% 60 8 h 4 min→12 h 4 min 0.56% 0.84%60 12 h→17 h 54 min 6 min 0.56% 0.84% 60 18 h→23 h 50 min 10 min 0.70%0.93% 36 1 d→1 d 23 h 45 min 15 min 0.52% 1.04% 96 2 d→4 d 23 h 30 min30 min 0.42% 1.04% 96 4 d→8 d 23 h 1 h 0.42% 1.04% 96 8 d→15 d 2 h 2 h0.42% 1.04% 96 16 d→1 month 4 h 0.42% 1.04% 96

The total number of registers for the histogram H1 therefore equals2106, i.e. a memory space of 8424 bytes while storing the registers on32 bits.

In the same way, if the days of the month are broken down into hours forthe histogram H2, we obtain a number of registers of 744, i.e. 2976bytes while storing the registers on 32 bits.

For the sake of confidentiality, this information is encrypted forexample in packets of 8 words (i.e. 32 bytes).

1. A device for temporal metering of events, comprising: means forassociating a current time with each input of occurrence of a physicalevent, means for summary processing of said occurrences and of thecurrent times so as to produce condensed results; and a means forrecording in at least one metering file, of information containing saidcondensed results in predefined data structures of prefixed sizes, so asto make it possible to keep the size of said file constant duringsuccessive recordings of said information, said information authorizingan at least partial temporal reconstruction of the occurrences.
 2. Thetemporal metering device as claimed in claim 1, wherein the summaryprocessing module is designed to produce at least two types of distinctresults, at least one of said types of results comprising redundancieswith respect to the other types of results, so as to allow checks ofconsistency of said results.
 3. The temporal metering device as claimedin claim 2, wherein the summary processing module is designed so thatthe types of results provide complementary information.
 4. The temporalmetering device as claimed in claim 3, wherein the types of resultscomprise: a first type of results consisting of numbers of theoccurrences per slot of durations of gaps between two of the consecutiveoccurrences and a second type of results consisting of numbers of theoccurrences per consecutive time slot of a predetermined period.
 5. Thetemporal metering device as claimed in claim 4, wherein the slots ofdurations of gaps of the first type of results have amplitudesincreasing not strictly with the durations.
 6. The temporal meteringdevice as claimed in claim 1, wherein the physical events comprise callsto a piece of software situated on a source machine by appliances ableto communicate with the machine.
 7. The temporal metering device asclaimed in claim 1, wherein the physical events comprise telephonecalls.
 8. The temporal metering device as claimed in claim 1, whereinthe physical events comprise predefined maneuvers in a motor vehicle. 9.The temporal metering device as claimed in claim 1, wherein the physicalevents comprise uses of computer functionalities available on a machineand liable to undergo malfunctions on account of technical problems. 10.A method of temporal metering of events comprising the steps of:associating a current time with each input of occurrence of a physicalevent, processing said occurrences and said current times so as toproduce condensed results, recording in at least one metering file,information containing the condensed results, in predefined datastructures of prefixed sizes, so as to make it possible to keep the sizeof the file constant during successive recordings of the information,the information authorizing an at least partial temporal reconstructionof the occurrences.
 11. A device for temporal analysis of events on thebasis of at least one metering file obtained by means of a meteringdevice in accordance with claim 2, comprising: a module for extractingthe results recorded in the file, a module for verifying consistenciesof the results respectively of the types of results, and a module forproducing a warning signal intended for a user in the case ofinconsistency of the results.
 12. The temporal analysis device asclaimed in claim 11, wherein the metering file being obtained by meansof a metering device as claimed in claim 3, said temporal analysisdevice also comprises: a module for inputting requests of a user, therequests pertaining to temporal cues relating to the occurrences of theevents, a module for combined processing of the types of results, whichmodule is designed to produce said temporal cues as a function of theinformation recorded, and a module for presenting said temporal cues tothe user.
 13. A method of temporal analysis of events on the basis of atleast one metering file obtained by means of a metering device inaccordance with claim 2, in which: results recorded in the file areextracted, the consistencies of the results respectively of the types ofresults are verified automatically, and a warning signal intended for auser in the case of inconsistency of the results is produced.
 14. Acomputer program product comprising program code instructions for theexecution of the steps of the method as claimed in claim 10 when theprogram is executed on a computer.